JavaScriptã¢ãžã¥ãŒã«ãã§ãã¬ãŒã·ã§ã³ã®ããã©ãŒãã³ã¹ãžã®åœ±é¿ãæ¢æ±ããåçããŒãã£ã³ã°ãšãã®é¢é£ããåŠçãªãŒããŒãããã«çŠç¹ãåœãŠãŸããæé©åãšãã¹ããã©ã¯ãã£ã¹ã®ããã®æŠç¥ãåŠã³ãŸãã
JavaScriptã¢ãžã¥ãŒã«ãã§ãã¬ãŒã·ã§ã³ã®ããã©ãŒãã³ã¹ãžã®åœ±é¿: åçããŒãã£ã³ã°åŠçã®ãªãŒããŒããã
JavaScriptã¢ãžã¥ãŒã«ãã§ãã¬ãŒã·ã§ã³ã¯ãwebpackã«ãã£ãŠå°å ¥ããã匷åãªæ©èœã§ãããç¬ç«ããŠæ§ç¯ããã³ãããã€ãããã¢ããªã±ãŒã·ã§ã³ïŒã¢ãžã¥ãŒã«ïŒããå®è¡æã«åçã«ããŒãããã³å ±æããããã€ã¯ãããã³ããšã³ãã¢ãŒããã¯ãã£ã®äœæãå¯èœã«ããŸããã³ãŒãã®åå©çšãç¬ç«ãããããã€ã¡ã³ããããã³ããŒã ã®èªåŸæ§ã«ãããŠå€§ããªå©ç¹ãæäŸããäžæ¹ã§ãåçããŒãã£ã³ã°ãšçµæãšããŠçããåŠçãªãŒããŒãããã«é¢é£ããããã©ãŒãã³ã¹ãžã®åœ±é¿ãçè§£ãã察åŠããããšãéèŠã§ãããã®èšäºã§ã¯ããããã®åŽé¢ãæ·±ãæãäžããæé©åã®ããã®æŽå¯ãšæŠç¥ãæäŸããŸãã
ã¢ãžã¥ãŒã«ãã§ãã¬ãŒã·ã§ã³ãšåçããŒãã£ã³ã°ã®çè§£
ã¢ãžã¥ãŒã«ãã§ãã¬ãŒã·ã§ã³ã¯ãJavaScriptã¢ããªã±ãŒã·ã§ã³ã®æ§ç¯ããã³ãããã€æ¹æ³ãæ ¹æ¬çã«å€ããŸããã¢ããªã·ãã¯ãªãããã€ã¡ã³ãã®ä»£ããã«ãã¢ããªã±ãŒã·ã§ã³ã¯ããå°ãããç¬ç«ããŠãããã€å¯èœãªãŠãããã«åå²ã§ããŸãããããã®ãŠãããïŒã¢ãžã¥ãŒã«ãšåŒã°ããŸãïŒã¯ãä»ã®ã¢ãžã¥ãŒã«ã§äœ¿çšã§ããã³ã³ããŒãã³ãã颿°ãããã«ã¯ã¢ããªã±ãŒã·ã§ã³å šäœãå ¬éã§ããŸãããã®åçå ±æã®éµã¯ããã«ãæã«ãã³ãã«ãããã®ã§ã¯ãªãããªã³ããã³ãã§ã¢ãžã¥ãŒã«ãããŒããããåçããŒãã£ã³ã°ã§ãã
å€§èŠæš¡ãªeã³ããŒã¹ãã©ãããã©ãŒã ãã補åã¬ã³ã¡ã³ããŒã·ã§ã³ãšã³ãžã³ãªã©ã®æ°æ©èœãå°å ¥ãããã·ããªãªãèããŠã¿ãŸããããã¢ãžã¥ãŒã«ãã§ãã¬ãŒã·ã§ã³ã䜿çšãããšãã¬ã³ã¡ã³ããŒã·ã§ã³ãšã³ãžã³ãç¬ç«ããã¢ãžã¥ãŒã«ãšããŠæ§ç¯ããã³ãããã€ã§ããŸããæ¬¡ã«ãã¡ã€ã³ã®eã³ããŒã¹ã¢ããªã±ãŒã·ã§ã³ã¯ããŠãŒã¶ãŒã補å詳现ããŒãžã«ç§»åããå Žåã«ã®ã¿ãã®ã¢ãžã¥ãŒã«ãåçã«ããŒãã§ãããããã¬ã³ã¡ã³ããŒã·ã§ã³ãšã³ãžã³ã®ã³ãŒããåæã¢ããªã±ãŒã·ã§ã³ãã³ãã«ã«å«ããå¿ èŠã¯ãããŸããã
ããã©ãŒãã³ã¹ã®ãªãŒããŒããã: 詳现ãªåæ
åçããŒãã£ã³ã°ã¯å€ãã®å©ç¹ãæäŸããäžæ¹ã§ãéçºè ãèªèããå¿ èŠã®ããããã©ãŒãã³ã¹ãªãŒããŒããããçºçããŸãããã®ãªãŒããŒãããã¯ãããã€ãã®é åã«å€§ããåé¡ã§ããŸãã
1. ãããã¯ãŒã¯é å»¶
ã¢ãžã¥ãŒã«ãåçã«ããŒãããã«ã¯ããããã¯ãŒã¯çµç±ã§ãã§ããããå¿ èŠããããŸããã€ãŸããã¢ãžã¥ãŒã«ã®ããŒãã«ãããæéã¯ããããã¯ãŒã¯é å»¶ã®åœ±é¿ãçŽæ¥åããŸãããŠãŒã¶ãŒãšãµãŒããŒéã®å°ççãªè·é¢ããããã¯ãŒã¯ã®æ··éãã¢ãžã¥ãŒã«ã®ãµã€ãºãªã©ã®èŠå ããã¹ãŠããããã¯ãŒã¯é å»¶ã«åœ±é¿ããŸãããªãŒã¹ãã©ãªã¢ã®èŸ²æéšã«ãããŠãŒã¶ãŒããç±³åœã«ãããµãŒããŒã§ãã¹ããããŠããã¢ãžã¥ãŒã«ã«ã¢ã¯ã»ã¹ããããšããŠãããšæ³åããŠãã ããããããã¯ãŒã¯é å»¶ã¯ããµãŒããŒãšåãéœåžã«ãããŠãŒã¶ãŒãšæ¯èŒããŠå€§å¹ ã«é«ããªããŸãã
è»œæžæŠç¥:
- ã³ã³ãã³ãããªããªãŒãããã¯ãŒã¯ïŒCDNïŒ: ç°ãªãå°ççãªãŒãžã§ã³ã«ãããµãŒããŒã®ãããã¯ãŒã¯å šäœã«ã¢ãžã¥ãŒã«ã忣ããŸããããã«ããããŠãŒã¶ãŒãšã¢ãžã¥ãŒã«ããã¹ããããµãŒããŒéã®è·é¢ãççž®ãããé å»¶ãæå°éã«æããããŸããCloudflareãAWS CloudFrontãããã³Akamaiã¯ãäžè¬çãªCDNãããã€ããŒã§ãã
- ã³ãŒãåå²: 倧ããªã¢ãžã¥ãŒã«ãããå°ããªãã£ã³ã¯ã«åå²ããŸããããã«ãããç¹å®ã®æ©èœã«å¿ èŠãªã³ãŒãã®ã¿ãããŒãã§ããããããããã¯ãŒã¯çµç±ã§è»¢éããå¿ èŠãããããŒã¿éãåæžã§ããŸããWebpackã®ã³ãŒãå岿©èœã¯ããã§äžå¯æ¬ ã§ãã
- ãã£ãã·ã³ã°: ã¢ã°ã¬ãã·ããªãã£ãã·ã³ã°æŠç¥ãå®è£ ããŠãã¢ãžã¥ãŒã«ããŠãŒã¶ãŒã®ãã©ãŠã¶ãŸãã¯ããŒã«ã«ãã·ã³ã«ä¿åããŸããããã«ãããåãã¢ãžã¥ãŒã«ããããã¯ãŒã¯çµç±ã§ç¹°ãè¿ããã§ããããå¿ èŠããªããªããŸããæé©ãªçµæãåŸãã«ã¯ãHTTPãã£ãã·ã³ã°ããããŒïŒCache-ControlãExpiresïŒã掻çšããŸãã
- ã¢ãžã¥ãŒã«ãµã€ãºã®æé©å: ããªãŒã·ã§ã€ãã³ã°ïŒæªäœ¿çšã®ã³ãŒãã®åé€ïŒããããã¡ã€åïŒã³ãŒããµã€ãºã®åæžïŒãããã³å§çž®ïŒGzipãŸãã¯Brotliã®äœ¿çšïŒãªã©ã®ææ³ã䜿çšããŠãã¢ãžã¥ãŒã«ã®ãµã€ãºãæå°éã«æããŸãã
2. JavaScriptã®è§£æãšã³ã³ãã€ã«
ã¢ãžã¥ãŒã«ãããŠã³ããŒãããããšããã©ãŠã¶ã¯JavaScriptã³ãŒããè§£æããŠã³ã³ãã€ã«ããå¿ èŠããããŸãããã®ããã»ã¹ã¯ãç¹ã«å€§èŠæš¡ã§è€éãªã¢ãžã¥ãŒã«ã®å Žåãèšç®éãå€ããªãå¯èœæ§ããããŸããJavaScriptã®è§£æãšã³ã³ãã€ã«ã«ãããæéã¯ããŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ã«å€§ããªåœ±é¿ãäžããé å»¶ããžã£ã³ã¯ãã¹ã«ã€ãªããå¯èœæ§ããããŸãã
è»œæžæŠç¥:
- JavaScriptã³ãŒãã®æé©å: ãã©ãŠã¶ãè§£æããã³ã³ã³ãã€ã«äžã«å®è¡ããå¿ èŠãããäœæ¥éãæå°éã«æããå¹ççãªJavaScriptã³ãŒããäœæããŸããè€éãªåŒãäžèŠãªã«ãŒããããã³éå¹ççãªã¢ã«ãŽãªãºã ã¯é¿ããŠãã ããã
- ææ°ã®JavaScriptæ§æã®äœ¿çš: ææ°ã®JavaScriptæ§æïŒES6 +ïŒã¯ãå€ãã®å Žåãå€ãæ§æãããå¹ççã§ããã¢ããŒé¢æ°ããã³ãã¬ãŒããªãã©ã«ãããã³ãã¹ãã©ã¯ãã£ãªã³ã°ãªã©ã®æ©èœã䜿çšããŠãããã¯ãªãŒã³ã§ããã©ãŒãã³ã¹ã®é«ãã³ãŒããèšè¿°ããŸãã
- ãã³ãã¬ãŒãã®äºåã³ã³ãã€ã«: ã¢ãžã¥ãŒã«ã§ãã³ãã¬ãŒãã䜿çšããå Žåã¯ããã«ãæã«ãã³ãã¬ãŒããäºåã³ã³ãã€ã«ããŠãã©ã³ã¿ã€ã ã³ã³ãã€ã«ã®ãªãŒããŒããããåé¿ããŸãã
- WebAssemblyã®æ€èš: èšç®è² è·ã®é«ãã¿ã¹ã¯ã«ã¯ãWebAssemblyã®äœ¿çšãæ€èšããŠãã ãããWebAssemblyã¯ãJavaScriptãããã¯ããã«é«éã«å®è¡ã§ãããã€ããªåœä»€åœ¢åŒã§ãã
3. ã¢ãžã¥ãŒã«ã®åæåãšå®è¡
è§£æãšã³ã³ãã€ã«åŸãã¢ãžã¥ãŒã«ãåæåããŠå®è¡ããå¿ èŠããããŸããããã«ã¯ãã¢ãžã¥ãŒã«ã®ç°å¢ã®èšå®ããšã¯ã¹ããŒãã®ç»é²ãããã³åæåã³ãŒãã®å®è¡ãå«ãŸããŸãããã®ããã»ã¹ããç¹ã«ã¢ãžã¥ãŒã«ã«è€éãªäŸåé¢ä¿ãããå ŽåããéèŠãªèšå®ãå¿ èŠãªå Žåã¯ããªãŒããŒããããçºçããå¯èœæ§ããããŸãã
è»œæžæŠç¥:
- ã¢ãžã¥ãŒã«ã®äŸåé¢ä¿ã®æå°å: ã¢ãžã¥ãŒã«ãäŸåããäŸåé¢ä¿ã®æ°ãæžãããŸããããã«ãããåæåäžã«å®è¡ããå¿ èŠãããäœæ¥éãåæžãããŸãã
- é å»¶åæå: ã¢ãžã¥ãŒã«ã®åæåããå®éã«å¿ èŠãªãšããŸã§å»¶æããŸããããã«ãããäžèŠãªåæåãªãŒããŒããããåé¿ã§ããŸãã
- ã¢ãžã¥ãŒã«ã®ãšã¯ã¹ããŒãã®æé©å: ã¢ãžã¥ãŒã«ããå¿ èŠãªã³ã³ããŒãã³ããšé¢æ°ã®ã¿ããšã¯ã¹ããŒãããŸããããã«ãããåæåäžã«å®è¡ããå¿ èŠãããã³ãŒãéãåæžãããŸãã
- éåæåæå: å¯èœã§ããã°ãã¢ãžã¥ãŒã«ã®åæåãéåæçã«å®è¡ããŠãã¡ã€ã³ã¹ã¬ããã®ãããã¯ãåé¿ããŸããããã«ã¯ãPromisesãŸãã¯async/awaitã䜿çšããŸãã
4. ã³ã³ããã¹ãã®åãæ¿ããšã¡ã¢ãªç®¡ç
ã¢ãžã¥ãŒã«ãåçã«ããŒãããå Žåããã©ãŠã¶ã¯ç°ãªãå®è¡ã³ã³ããã¹ããåãæ¿ããå¿ èŠããããŸãããã®ã³ã³ããã¹ãã®åãæ¿ãã«ããããã©ãŠã¶ã¯çŸåšã®å®è¡ã³ã³ããã¹ãã®ç¶æ ãä¿åããã³åŸ©å ããå¿ èŠãããããããªãŒããŒããããçºçããå¯èœæ§ããããŸããããã«ãã¢ãžã¥ãŒã«ã®åçãªããŒããšã¢ã³ããŒãã¯ããã©ãŠã¶ã®ã¡ã¢ãªç®¡çã·ã¹ãã ã«è² è·ããããã¬ããŒãžã³ã¬ã¯ã·ã§ã³ã®äžæåæ¢ã«ã€ãªããå¯èœæ§ããããŸãã
è»œæžæŠç¥:
- ã¢ãžã¥ãŒã«ãã§ãã¬ãŒã·ã§ã³ã®å¢çã®æå°å: ã¢ããªã±ãŒã·ã§ã³ã®ã¢ãžã¥ãŒã«ãã§ãã¬ãŒã·ã§ã³ã®å¢çã®æ°ãæžãããŸããé床ã®ãã§ãã¬ãŒã·ã§ã³ã¯ãã³ã³ããã¹ãã®åãæ¿ããªãŒããŒãããã®å¢å ã«ã€ãªããå¯èœæ§ããããŸãã
- ã¡ã¢ãªäœ¿çšéã®æé©å: ã¡ã¢ãªã®å²ãåœãŠãšè§£æŸãæå°éã«æããã³ãŒããäœæããŸããäžèŠãªãªããžã§ã¯ããäœæããããäžèŠã«ãªã£ããªããžã§ã¯ããžã®åç §ãä¿æãããããããšã¯é¿ããŠãã ããã
- ã¡ã¢ãªãããã¡ã€ãªã³ã°ããŒã«ã®äœ¿çš: ãã©ãŠã¶ã®éçºè ããŒã«ã䜿çšããŠãã¡ã¢ãªãªãŒã¯ãç¹å®ããã¡ã¢ãªäœ¿çšéãæé©åããŸãã
- ã°ããŒãã«ç¶æ ã®æ±æã®åé¿: æå³ããªãå¯äœçšãé²ããã¡ã¢ãªç®¡çãç°¡çŽ åããããã«ãã¢ãžã¥ãŒã«ã®ç¶æ ãã§ããã ãåé¢ããŸãã
å®è·µçãªäŸãšã³ãŒãã¹ãããã
ãããã®æŠå¿µã®ããã€ããå®è·µçãªäŸã§èª¬æããŸãããã
äŸ1: Webpackã䜿çšããã³ãŒãåå²
Webpackã®ã³ãŒãå岿©èœã䜿çšããŠã倧ããªã¢ãžã¥ãŒã«ãããå°ããªãã£ã³ã¯ã«åå²ã§ããŸããããã«ãããåæããŒãæéãå€§å¹ ã«æ¹åãããããã¯ãŒã¯é å»¶ãåæžã§ããŸãã
// webpack.config.js
module.exports = {
// ...
optimization: {
splitChunks: {
chunks: 'all',
},
},
};
ãã®æ§æã¯ãäŸåé¢ä¿ã«åºã¥ããŠã³ãŒããèªåçã«å°ããªãã£ã³ã¯ã«åå²ããŸããç°ãªããã£ã³ã¯ã°ã«ãŒããæå®ããããšã§ãåå²åäœãããã«ã«ã¹ã¿ãã€ãºã§ããŸãã
äŸ2: import()ã䜿çšããé
å»¶ããŒã
import()æ§æã䜿çšãããšããªã³ããã³ãã§ã¢ãžã¥ãŒã«ãåçã«ããŒãã§ããŸãã
// Component.js
async function loadModule() {
const module = await import('./MyModule');
// Use the module
}
ãã®ã³ãŒãã¯ãloadModule()颿°ãåŒã³åºããããšãã«ã®ã¿MyModule.jsãããŒãããŸããããã¯ãã¢ããªã±ãŒã·ã§ã³ã®ç¹å®ã®éšåã§ã®ã¿å¿
èŠãªã¢ãžã¥ãŒã«ãããŒãããå Žåã«åœ¹ç«ã¡ãŸãã
äŸ3: HTTPããããŒã䜿çšãããã£ãã·ã³ã°
é©åãªHTTPãã£ãã·ã³ã°ããããŒãéä¿¡ããããã«ãµãŒããŒãæ§æããŠããã©ãŠã¶ã«ã¢ãžã¥ãŒã«ããã£ãã·ã¥ããããã«æç€ºããŸãã
Cache-Control: public, max-age=31536000 // 1幎éãã£ãã·ã¥
ãã®ããããŒã¯ããã©ãŠã¶ã«ã¢ãžã¥ãŒã«ã1幎éãã£ãã·ã¥ããããã«æç€ºããŸãããã£ãã·ã³ã°èŠä»¶ã«å¿ããŠãmax-ageå€ã調æŽããŸãã
åçããŒãã£ã³ã°ã®ãªãŒããŒããããæå°éã«æããããã®æŠç¥
ã¢ãžã¥ãŒã«ãã§ãã¬ãŒã·ã§ã³ã§ã®åçããŒãã£ã³ã°ã®ããã©ãŒãã³ã¹ãžã®åœ±é¿ãæå°éã«æããããã®æŠç¥ã®æŠèŠã次ã«ç€ºããŸãã
- ã¢ãžã¥ãŒã«ãµã€ãºã®æé©å: ããªãŒã·ã§ã€ãã³ã°ããããã¡ã€åãå§çž®ïŒGzip/BrotliïŒã
- CDNã®æŽ»çš: ã¬ã€ãã³ã·ãççž®ããããã«ãã¢ãžã¥ãŒã«ãã°ããŒãã«ã«åæ£ããŸãã
- ã³ãŒãåå²: 倧ããªã¢ãžã¥ãŒã«ããããå°ããã管çãããããã£ã³ã¯ã«åå²ããŸãã
- ãã£ãã·ã³ã°: HTTPããããŒã䜿çšããŠãã¢ã°ã¬ãã·ããªãã£ãã·ã³ã°æŠç¥ãå®è£ ããŸãã
- é å»¶ããŒã: å¿ èŠãªå Žåã«ã®ã¿ã¢ãžã¥ãŒã«ãããŒãããŸãã
- JavaScriptã³ãŒãã®æé©å: å¹ççã§ããã©ãŒãã³ã¹ã®é«ãJavaScriptã³ãŒããèšè¿°ããŸãã
- äŸåé¢ä¿ã®æå°å: ã¢ãžã¥ãŒã«ãããã®äŸåé¢ä¿ã®æ°ãæžãããŸãã
- éåæåæå: ã¢ãžã¥ãŒã«ã®åæåãéåæçã«å®è¡ããŸãã
- ããã©ãŒãã³ã¹ã®ç£èŠ: ãã©ãŠã¶ã®éçºè ããŒã«ãšããã©ãŒãã³ã¹ç£èŠããŒã«ã䜿çšããŠãããã«ããã¯ãç¹å®ããŸããLighthouseãWebPageTestãããã³New Relicãªã©ã®ããŒã«ã¯éåžžã«è²Žéã§ãã
ã±ãŒã¹ã¹ã¿ãã£ãšå®éã®äŸ
äŒæ¥ãããã©ãŒãã³ã¹ã®æžå¿µã«å¯ŸåŠããªãããã¢ãžã¥ãŒã«ãã§ãã¬ãŒã·ã§ã³ãæ£åžžã«å®è£ ããå®éã®äŸãããã€ãèŠãŠã¿ãŸãããã
- A瀟ïŒEã³ããŒã¹ïŒ: 補å詳现ããŒãžã®ãã€ã¯ãããã³ããšã³ãã¢ãŒããã¯ãã£ãäœæããããã«ãã¢ãžã¥ãŒã«ãã§ãã¬ãŒã·ã§ã³ãå®è£ ããŸãããã³ãŒãåå²ãšé å»¶ããŒãã䜿çšããŠãããŒãžã®åæããŒãæéãççž®ããŸããããŸããäžçäžã®ãŠãŒã¶ãŒã«ã¢ãžã¥ãŒã«ãè¿ éã«é ä¿¡ããããã«ãCDNã«å€§ããäŸåããŠããŸããäž»èŠãªããã©ãŒãã³ã¹ææšïŒKPIïŒã¯ãããŒãžããŒãæéã®20ïŒ åæžã§ããã
- B瀟ïŒéèãµãŒãã¹ïŒ: ã¢ãžã¥ãŒã«åŒã®ããã·ã¥ããŒãã¢ããªã±ãŒã·ã§ã³ãæ§ç¯ããããã«ãã¢ãžã¥ãŒã«ãã§ãã¬ãŒã·ã§ã³ã䜿çšããŸãããæªäœ¿çšã®ã³ãŒããåé€ããäŸåé¢ä¿ãæå°éã«æããããšã§ãã¢ãžã¥ãŒã«ãµã€ãºãæé©åããŸããããŸããã¢ãžã¥ãŒã«ã®ããŒãäžã«ã¡ã€ã³ã¹ã¬ããã®ãããã¯ãåé¿ããããã«ãéåæåæåãå®è£ ããŸãããäž»ãªç®æšã¯ãããã·ã¥ããŒãã¢ããªã±ãŒã·ã§ã³ã®å¿çæ§ãåäžãããããšã§ããã
- C瀟ïŒã¡ãã£ã¢ã¹ããªãŒãã³ã°ïŒ: ãŠãŒã¶ãŒã®ããã€ã¹ãšãããã¯ãŒã¯æ¡ä»¶ã«åºã¥ããŠãããŸããŸãªãããªãã¬ãŒã€ãŒãåçã«ããŒãããããã«ãã¢ãžã¥ãŒã«ãã§ãã¬ãŒã·ã§ã³ã掻çšããŸãããã¹ã ãŒãºãªã¹ããªãŒãã³ã°ãšã¯ã¹ããªãšã³ã¹ã確ä¿ããããã«ãã³ãŒãåå²ãšãã£ãã·ã³ã°ãçµã¿åãããŠäœ¿çšããŸããããããã¡ãªã³ã°ãæå°éã«æãããããªåçå質ãåäžãããããšã«éç¹ã眮ããŠããŸããã
ã¢ãžã¥ãŒã«ãã§ãã¬ãŒã·ã§ã³ãšããã©ãŒãã³ã¹ã®æªæ¥
ã¢ãžã¥ãŒã«ãã§ãã¬ãŒã·ã§ã³ã¯æ¥éã«é²åããŠãããã¯ãããžãŒã§ãããçŸåšé²è¡äžã®ç ç©¶éçºåªåã¯ããã®ããã©ãŒãã³ã¹ãããã«åäžãããããšã«éç¹ã眮ããŠããŸããæ¬¡ã®åéã§ã®é²æ©ãæåŸ ãããŸãã
- æ¹åããããã«ãããŒã«: ãã«ãããŒã«ã¯ãã¢ãžã¥ãŒã«ãã§ãã¬ãŒã·ã§ã³ã®ãµããŒãã匷åããã¢ãžã¥ãŒã«ãµã€ãºãšããŒãããã©ãŒãã³ã¹ãæé©åããããã«é²åãç¶ããŸãã
- 匷åããããã£ãã·ã³ã°ã¡ã«ããºã : ãã£ãã·ã³ã°å¹çãããã«åäžããããããã¯ãŒã¯é å»¶ãåæžããããã«ãæ°ãããã£ãã·ã³ã°ã¡ã«ããºã ãéçºãããŸãããµãŒãã¹ã¯ãŒã«ãŒã¯ããã®åéã®éèŠãªãã¯ãããžãŒã§ãã
- é«åºŠãªæé©åææ³: ã¢ãžã¥ãŒã«ãã§ãã¬ãŒã·ã§ã³ã«é¢é£ããç¹å®ã®ããã©ãŒãã³ã¹ã®èª²é¡ã«å¯ŸåŠããããã«ãæ°ããæé©åææ³ãåºçŸããŸãã
- æšæºå: ã¢ãžã¥ãŒã«ãã§ãã¬ãŒã·ã§ã³ãæšæºåããåãçµã¿ã¯ãçžäºéçšæ§ã確ä¿ããå®è£ ã®è€éãã軜æžããã®ã«åœ¹ç«ã¡ãŸãã
çµè«
JavaScriptã¢ãžã¥ãŒã«ãã§ãã¬ãŒã·ã§ã³ã¯ãã¢ãžã¥ãŒã«åŒã§ã¹ã±ãŒã©ãã«ãªã¢ããªã±ãŒã·ã§ã³ãæ§ç¯ããããã®åŒ·åãªæ¹æ³ãæäŸããŸãããã ããåçããŒãã£ã³ã°ã«é¢é£ããããã©ãŒãã³ã¹ãžã®åœ±é¿ãçè§£ãã察åŠããããšãäžå¯æ¬ ã§ãããã®èšäºã§èª¬æããèŠçŽ ãæ éã«æ€èšããæšå¥šãããæŠç¥ãå®è£ ããããšã§ããªãŒããŒããããæå°éã«æããã¹ã ãŒãºã§å¿çæ§ã®é«ããŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ã確ä¿ã§ããŸããã¢ããªã±ãŒã·ã§ã³ã®é²åã«åãããŠæé©ãªããã©ãŒãã³ã¹ãç¶æããã«ã¯ãç¶ç¶çãªç£èŠãšæé©åãäžå¯æ¬ ã§ãã
ã¢ãžã¥ãŒã«ãã§ãã¬ãŒã·ã§ã³ãæ£åžžã«å®è£ ããããã®éµã¯ãã³ãŒãã®ç·šæãšãã«ãã®æ§æããããããã€ã¡ã³ããšç£èŠãŸã§ãéçºããã»ã¹ã®ãã¹ãŠã®åŽé¢ãèæ ®ããå šäœçãªã¢ãããŒãã§ããããšãå¿ããªãã§ãã ããããã®ã¢ãããŒããæ¡çšããããšã§ãã¢ãžã¥ãŒã«ãã§ãã¬ãŒã·ã§ã³ã®å¯èœæ§ãæå€§éã«åŒãåºããçã«é©æ°çã§é«æ§èœãªã¢ããªã±ãŒã·ã§ã³ãæ§ç¯ã§ããŸãã